home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / misc / ConfigLib2.lha / ConfigLibrary / Test / C / ConfigTest.c
Encoding:
C/C++ Source or Header  |  1996-09-07  |  3.0 KB  |  104 lines

  1. /*
  2. ** ConfigTest.c
  3. **
  4. ** $VER: ConfigTest.c 2.0 (7.9.96)
  5. **
  6. ** Copyright (C) 1996, Adam Dawes
  7. **
  8. ** Refer to accompanying documentation for further details
  9. */
  10.  
  11.  
  12. #include <clib/exec_protos.h>
  13.  
  14. #include <stdio.h>
  15. #include <stdlib.h>
  16.  
  17. #include <libraries/config.h>
  18. #include <proto/config.h>
  19.  
  20.  
  21. void main()
  22. {
  23.     struct ConfigBase *ConfigBase = NULL;
  24.     long result;
  25.     char prefbuffer[50];
  26.     char filename[] = {"RAM:ConfigTest.cfg"};
  27.  
  28.  
  29.     ConfigBase = OpenLibrary("config.library", 2);
  30.     if (!ConfigBase)
  31.     {
  32.         printf("Unable to open config.library v2.0\n");
  33.         exit(20);
  34.     }
  35.  
  36.  
  37.  
  38.     printf("Writing some data to the config file (%s)...\n",filename);
  39.  
  40.     result = WriteConfig(filename,"Test section","Name","Adam Dawes");
  41.     result = WriteConfig(filename,"Test section","Town","Brighton");
  42.     result = WriteConfig(filename,"Test section","Country","England");
  43.  
  44.     result = WriteConfig(filename,"Load file","Path","SYS:");
  45.     result = WriteConfig(filename,"Load file","Name","Test.dat");
  46.     result = WriteConfigNumber(filename,"Load file","Access count",17);
  47.  
  48.     result = WriteConfig(filename,"Save file","Path","RAM:");
  49.     result = WriteConfig(filename,"Save file","Name","Test2.dat");
  50.     result = WriteConfigNumber(filename,"Save file","Access count",4);
  51.  
  52.  
  53.     printf("\nReading the data back...\n\n");
  54.  
  55.     result = ReadConfig(filename,"Test section","Name",prefbuffer,50,"(unknown)");
  56.     printf("Name: %s\n",prefbuffer);
  57.     result = ReadConfig(filename,"Test section","Town",prefbuffer,50,"(unknown)");
  58.     printf("Town: %s\n",prefbuffer);
  59.     result = ReadConfig(filename,"Test section","Country",prefbuffer,50,"(unknown)");
  60.     printf("Country: %s\n",prefbuffer);
  61.     result = ReadConfig(filename,"Test section","Telephone number",prefbuffer,50,"(unknown)");
  62.     printf("Telephone: %s\n",prefbuffer);
  63.  
  64.     printf("\nLoad file:\n");
  65.     result = ReadConfig(filename,"Load file","Path",prefbuffer,50,"");
  66.     printf("  Path: %s\n",prefbuffer);
  67.     result = ReadConfig(filename,"Load file","Name",prefbuffer,50,"");
  68.     printf("  Name: %s\n",prefbuffer);
  69.     result = ReadConfigNumber(filename,"Load file","Access count",0);
  70.     printf("  Access count: %d\n",result);
  71.  
  72.     printf("\nSave file:\n");
  73.     result = ReadConfig(filename,"Save file","Path",prefbuffer,50,"");
  74.     printf("  Path: %s\n",prefbuffer);
  75.     result = ReadConfig(filename,"Save file","Name",prefbuffer,50,"");
  76.     printf("  Name: %s\n",prefbuffer);
  77.     result = ReadConfigNumber(filename,"Save file","Access count",0);
  78.     printf("  Access count: %d\n",result);
  79.  
  80.  
  81.     printf("\nChanging the data...\n");
  82.  
  83.     result = WriteConfig(filename,"Save file","Path","T:");
  84.     result = WriteConfig(filename,"Save file","Name","AnotherTest.dat");
  85.  
  86.  
  87.     printf("\nReading the data again...\n");
  88.  
  89.     printf("\nSave file:\n");
  90.     result = ReadConfig(filename,"Save file","Path",prefbuffer,50,"");
  91.     printf("  Path: %s\n",prefbuffer);
  92.     result = ReadConfig(filename,"Save file","Name",prefbuffer,50,"");
  93.     printf("  Name: %s\n",prefbuffer);
  94.     result = ReadConfigNumber(filename,"Save file","Access count",0);
  95.     printf("  Access count: %d\n",result);
  96.  
  97.  
  98.     printf("\nFinished.\n");
  99.  
  100.  
  101.     CloseLibrary(ConfigBase);
  102. }
  103.  
  104.